/*     */ package nc.vo.so.m30.util;
/*     */ 
/*     */ import java.util.HashMap;
/*     */ import java.util.Map;
/*     */ import nc.vo.bd.feature.ffile.entity.AggFFileVO;
/*     */ import nc.vo.pub.lang.UFDouble;
/*     */ import nc.vo.pubapp.pattern.pub.MathTool;
/*     */ import nc.vo.pubapp.pflow.PfUserObject;
/*     */ import nc.vo.so.m30.entity.SaleOrderBVO;
/*     */ import nc.vo.so.m30.entity.SaleOrderUserObject;
/*     */ import nc.vo.so.m30.entity.SaleOrderVO;
/*     */ import nc.vo.so.m30.rule.EditableAndRewiteItems;
/*     */ import nc.vo.so.pub.keyvalue.IKeyValue;
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ public class FeatureSelectUtil
/*     */ {
/*     */   public static Map<String, AggFFileVO> getAllRowAggFFileVO(IKeyValue keyValue)
/*     */   {
/*  31 */     int count = keyValue.getBodyCount();
/*  32 */     Map<String, AggFFileVO> aggffilevomap = new HashMap();
/*  33 */     for (int index = 0; index < count; index++) {
/*  34 */       if (null != keyValue.getBodyValue(index, "aggffilevo"))
/*     */       {
/*     */ 
/*  37 */         aggffilevomap.put(keyValue.getBodyStringValue(index, "crowno"), (AggFFileVO)keyValue.getBodyValue(index, "aggffilevo"));
/*     */       }
/*     */     }
/*     */     
/*  41 */     return aggffilevomap;
/*     */   }
/*     */   
/*     */ 
/*     */ 
/*     */ 
/*     */   public static void clearAllRowValue(IKeyValue keyValue, String sItemKey)
/*     */   {
/*  49 */     setAllRowsValue(keyValue, sItemKey, null);
/*     */   }
/*     */   
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */   public static void clearRowsValue(IKeyValue keyValue, int[] rows, String sItemKey)
/*     */   {
/*  59 */     setRowsValue(keyValue, rows, sItemKey, null);
/*     */   }
/*     */   
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */   public static void setAllRowsValue(IKeyValue keyValue, String sItemKey, Object value)
/*     */   {
/*  69 */     int count = keyValue.getBodyCount();
/*  70 */     for (int index = 0; index < count; index++) {
/*  71 */       keyValue.setBodyValue(index, sItemKey, null);
/*     */     }
/*     */   }
/*     */   
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */   public static void setRowsValue(IKeyValue keyValue, int[] rows, String sItemKey, Object value)
/*     */   {
/*  83 */     int length = rows.length;
/*  84 */     for (int index = 0; index < length; index++) {
/*  85 */       keyValue.setBodyValue(rows[index], sItemKey, value);
/*     */     }
/*     */   }
/*     */   
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */   public static boolean isOut(IKeyValue keyValue, int row)
/*     */   {
/*  98 */     UFDouble value = null;
/*  99 */     int reviseForOutlength = EditableAndRewiteItems.TOTALNUMKEY.length;
/* 100 */     for (int i = 0; i < reviseForOutlength; i++) {
/* 101 */       String key = EditableAndRewiteItems.TOTALNUMKEY[i];
/* 102 */       value = keyValue.getBodyUFDoubleValue(row, key);
/* 103 */       if ((MathTool.absCompareTo(value, UFDouble.ZERO_DBL) > 0) && 
/* 104 */         (!key.equalsIgnoreCase("narrangemonum")))
/*     */       {
/*     */ 
/* 107 */         if (!key.equalsIgnoreCase("ntotalsendnum"))
/*     */         {
/*     */ 
/*     */ 
/* 111 */           return true; }
/*     */       }
/*     */     }
/* 114 */     return false;
/*     */   }
/*     */   
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */   public static boolean isOut(SaleOrderBVO bvo)
/*     */   {
/* 126 */     UFDouble value = null;
/* 127 */     int reviseForOutlength = EditableAndRewiteItems.TOTALNUMKEY.length;
/* 128 */     for (int i = 0; i < reviseForOutlength; i++) {
/* 129 */       String key = EditableAndRewiteItems.TOTALNUMKEY[i];
/* 130 */       value = (UFDouble)bvo.getAttributeValue(key);
/* 131 */       if ((MathTool.absCompareTo(value, UFDouble.ZERO_DBL) > 0) && 
/* 132 */         (!key.equalsIgnoreCase("narrangemonum")))
/*     */       {
/*     */ 
/* 135 */         if (!key.equalsIgnoreCase("ntotalsendnum"))
/*     */         {
/*     */ 
/*     */ 
/* 139 */           return true; }
/*     */       }
/*     */     }
/* 142 */     return false;
/*     */   }
/*     */   
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */   public static void fillAggffileVO(SaleOrderVO[] inCurVOs, PfUserObject userObj)
/*     */   {
/* 152 */     if (userObj == null) {
/* 153 */       return;
/*     */     }
/* 155 */     Object saleUserObj = userObj.getUserObject();
/* 156 */     if (saleUserObj == null) {
/* 157 */       return;
/*     */     }
/* 159 */     Map<String, AggFFileVO> aggffilemapvo = ((SaleOrderUserObject)saleUserObj).getAggffilevomap();
/*     */     
/* 161 */     if ((aggffilemapvo == null) || (aggffilemapvo.size() == 0)) {
/* 162 */       return;
/*     */     }
/* 164 */     SaleOrderBVO[] bvos = inCurVOs[0].getChildrenVO();
/* 165 */     for (SaleOrderBVO bvo : bvos) {
/* 166 */       AggFFileVO aggffilevo = (AggFFileVO)aggffilemapvo.get(bvo.getCrowno());
/* 167 */       if (aggffilevo != null)
/*     */       {
/*     */ 
/* 170 */         bvo.setAggffilevo(aggffilevo);
/*     */       }
/*     */     }
/*     */   }
/*     */ }

